package com.jinmdz.fmis.dao.model.cremation;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.jinmdz.fmis.dao.base.BaseItem;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 火化任务信息
 *
 * @author LiCongLu
 * @date 2020-02-15 19:15
 */
public class CremationItem extends BaseItem {
    /**
     * 业务编码
     */
    private String businessCode;

    /**
     * 火化炉类型编码
     */
    private Integer furnaceTypeCode;

    /**
     * 火化炉类型编码
     */
    private String furnaceType;

    /**
     * 火化炉外键
     */
    private Integer furnaceId;

    /**
     * 是否预约
     */
    private Integer asAppointment;

    /**
     * 预约日期
     */
    @JsonFormat(pattern = yyyy_MM_dd)
    private Date appointmentDate;

    /**
     * 预约时间段
     */
    private String appointmentTimeSegment;

    /**
     * 实际冷却时间
     */
    @JsonFormat(pattern = yyyy_MM_dd_HH_mm)
    private Date realityCoolingTime;

    /**
     * 实际完成时间
     */
    @JsonFormat(pattern = yyyy_MM_dd_HH_mm)
    private Date realityFinishTime;

    /**
     * 火化证号
     */
    private String cremationNo;

    /**
     * 流程状态
     */
    private Integer processStateCode;

    /**
     * 是否活动任务
     */
    private Integer asActive;

    /**
     * 规则数量
     */
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private BigDecimal ruleNumber;

    /**
     * 规则单位
     */
    private String ruleUnit;

    /**
     * 规则编码
     */
    private String ruleCode;

    /**
     * 规则备注
     */
    private String ruleRemark;

    /**
     * 备注
     */
    private String remark;

    /**
     * 随机码
     */
    private String randomCode;

    /**
     * 费用外键
     */
    private Integer chargeId;

    /**
     * 是否取走骨灰
     */
    private Integer asTakeAsh;

    /**
     * 骨灰处理方式编码
     */
    private Integer ashHandleTypeCode;

    /**
     * 骨灰处理方式
     */
    private String ashHandleType;

    /**
     * 骨灰去向编码
     */
    private Integer ashWhereaboutsCode;

    /**
     * 骨灰去向
     */
    private String ashWhereabouts;

    public String getBusinessCode() {
        return businessCode;
    }

    public CremationItem setBusinessCode(String businessCode) {
        this.businessCode = businessCode;
        return this;
    }

    public Integer getFurnaceTypeCode() {
        return furnaceTypeCode;
    }

    public CremationItem setFurnaceTypeCode(Integer furnaceTypeCode) {
        this.furnaceTypeCode = furnaceTypeCode;
        return this;
    }

    public String getFurnaceType() {
        return furnaceType;
    }

    public CremationItem setFurnaceType(String furnaceType) {
        this.furnaceType = furnaceType;
        return this;
    }

    public Integer getFurnaceId() {
        return furnaceId;
    }

    public CremationItem setFurnaceId(Integer furnaceId) {
        this.furnaceId = furnaceId;
        return this;
    }

    public Integer getAsAppointment() {
        return asAppointment;
    }

    public CremationItem setAsAppointment(Integer asAppointment) {
        this.asAppointment = asAppointment;
        return this;
    }

    public Date getAppointmentDate() {
        return appointmentDate;
    }

    public CremationItem setAppointmentDate(Date appointmentDate) {
        this.appointmentDate = appointmentDate;
        return this;
    }

    public String getAppointmentTimeSegment() {
        return appointmentTimeSegment;
    }

    public CremationItem setAppointmentTimeSegment(String appointmentTimeSegment) {
        this.appointmentTimeSegment = appointmentTimeSegment;
        return this;
    }

    public Date getRealityCoolingTime() {
        return realityCoolingTime;
    }

    public CremationItem setRealityCoolingTime(Date realityCoolingTime) {
        this.realityCoolingTime = realityCoolingTime;
        return this;
    }

    public Date getRealityFinishTime() {
        return realityFinishTime;
    }

    public CremationItem setRealityFinishTime(Date realityFinishTime) {
        this.realityFinishTime = realityFinishTime;
        return this;
    }

    public String getCremationNo() {
        return cremationNo;
    }

    public CremationItem setCremationNo(String cremationNo) {
        this.cremationNo = cremationNo;
        return this;
    }

    public Integer getProcessStateCode() {
        return processStateCode;
    }

    public CremationItem setProcessStateCode(Integer processStateCode) {
        this.processStateCode = processStateCode;
        return this;
    }

    public Integer getAsActive() {
        return asActive;
    }

    public CremationItem setAsActive(Integer asActive) {
        this.asActive = asActive;
        return this;
    }

    public BigDecimal getRuleNumber() {
        return ruleNumber;
    }

    public CremationItem setRuleNumber(BigDecimal ruleNumber) {
        this.ruleNumber = ruleNumber;
        return this;
    }

    public String getRuleUnit() {
        return ruleUnit;
    }

    public CremationItem setRuleUnit(String ruleUnit) {
        this.ruleUnit = ruleUnit;
        return this;
    }

    public String getRuleCode() {
        return ruleCode;
    }

    public CremationItem setRuleCode(String ruleCode) {
        this.ruleCode = ruleCode;
        return this;
    }

    public String getRuleRemark() {
        return ruleRemark;
    }

    public CremationItem setRuleRemark(String ruleRemark) {
        this.ruleRemark = ruleRemark;
        return this;
    }

    public String getRemark() {
        return remark;
    }

    public CremationItem setRemark(String remark) {
        this.remark = remark;
        return this;
    }

    public String getRandomCode() {
        return randomCode;
    }

    public CremationItem setRandomCode(String randomCode) {
        this.randomCode = randomCode;
        return this;
    }

    public Integer getChargeId() {
        return chargeId;
    }

    public CremationItem setChargeId(Integer chargeId) {
        this.chargeId = chargeId;
        return this;
    }

    public Integer getAsTakeAsh() {
        return asTakeAsh;
    }

    public CremationItem setAsTakeAsh(Integer asTakeAsh) {
        this.asTakeAsh = asTakeAsh;
        return this;
    }

    public Integer getAshHandleTypeCode() {
        return ashHandleTypeCode;
    }

    public CremationItem setAshHandleTypeCode(Integer ashHandleTypeCode) {
        this.ashHandleTypeCode = ashHandleTypeCode;
        return this;
    }

    public String getAshHandleType() {
        return ashHandleType;
    }

    public CremationItem setAshHandleType(String ashHandleType) {
        this.ashHandleType = ashHandleType;
        return this;
    }

    public Integer getAshWhereaboutsCode() {
        return ashWhereaboutsCode;
    }

    public CremationItem setAshWhereaboutsCode(Integer ashWhereaboutsCode) {
        this.ashWhereaboutsCode = ashWhereaboutsCode;
        return this;
    }

    public String getAshWhereabouts() {
        return ashWhereabouts;
    }

    public CremationItem setAshWhereabouts(String ashWhereabouts) {
        this.ashWhereabouts = ashWhereabouts;
        return this;
    }
}
